SMB2J Worlds A through D data

By Insectduel

This is the data where the standard pointers, halfway pages, and other stuff that only exist in World A through D levels in SMB2J. The data is respectably the second block memory of the game.

Let’s begin the basics of the Standard level pointers

Room header data

There are the areas

Sea Attributes

00 World B-2

01 Invalid

02 Invalid

03 Invalid

04 Invalid

05 World 9-1 (SMAS only)

06 Part of World D-4 (Overworld Part, Level offset xC8E4)

07 World 9-4 (SMAS only)

08 World B-2 (SMAS only)

Overworld Attributes

20 World A-1

21 World A-3

22 World B-1

23 World B-3

24 World C-1

25 World C-2

26 World C-3

27 World D-1

28 World D-2

29 World D-3

2A World D-4 (Overworld Part)

2B Cloud Bonus Area

2C Pipe Intro

2D Overworld Ending

2E World A-2

2F Bonus Area

30 World B-2

Underground Attributes

40 World A-2

41 Bonus Area

42 World B-2

43 Invalid

44 Invalid

45 World A-2 (SMAS only)

46 Bonus Area (SMAS only)

Castle Attributes

60 World A-4

61 World B-4

62 World C-4

63 World D-4

64 World A-1

65 World A-3

66 World B-1

67 World B-3

68 World C-1

69 World C-2

6A World C-3

6B World D-1

6C World D-2

6D World D-3

6E World D-4 (Overworld Part)

6F Cloud Bonus Area

70 Pipe Intro

71 Overworld Ending

72 World A-2

73 Bonus Area

74 World B-2

Level Pointer data

Keep in mind that the data is in EXACT order.

Determines the number of levels to load for each world.

48514=0xBD82

Original Offsets: 00 05 0A 0E

Determines what map number to load for each level.

48523=0xBD8B

World A 20 2C 40 21 60

World B 22 2C 00 23 61

World C 24 25 26 62

World D 27 28 29 63

 

Enemy Pointer Data

This is the data where the pointers came from which is programmed to send enemies from one room to another room.

Sprite listing Attribute Pointers for Worlds A-D

48541=0xBD9D Room 00 Hex 14

48542=0xBD9E Room 20 Hex 04

48543=0xBD9F Room 40 Hex 12

48544=0xBDA0 Room 60 Hex 00

Sprite listing ROOM Pointers

48545=0xBDA1 Room 60 Hex D0 C5 (World A-4)

48547=0xBDA3 Room 61 Hex F5 C5

48549=0xBDA5 Room 62 Hex 1C C6

48551=0xBDA7 Room 63 Hex 5D C6

48553=0xBDA9 Room 20 Hex 8C C6 (World A-1)

48555=0xBDAB Room 21 Hex C7 C6

48557=0xBDAD Room 22 Hex D6 C6

48559=0xBDAF Room 23 Hex 04 C7

48561=0xBDB1 Room 24 Hex 29 C7

48563=0xBDB3 Room 25 Hex 4C C7

48565=0xBDB5 Room 26 Hex 6B C7

48567=0xBDB7 Room 27 Hex 8A C7

48569=0xBDB9 Room 28 Hex AA C7

48571=0xBDBB Room 29 Hex CB C7

48573=0xBDBD Room 2A Hex E2 C7 (World D-4, Overworld Part)

48575=0xBDBF Room 2B Hex F2 C7 (Cloud Bonus Area)

48577=0xBDC1 Room 2C Hex 60 C2 (Pipe Intro)

48579=0xBDC3 Room 2D Hex 60 C2 (Overworld Ending)

48581=0xBDC5 Room 40 Hex 01 C8 (World A-2)

48583=0xBDC7 Room 41 Hex 1B C8

48585=0xBDC9 Room 00 Hex 2F C8 (World B-2)

Object level Pointer Data

This is the data where the pointers came from which is programmed to send objects from one room to another room.

Object listing Attribute Pointers

48587=0xBDCB Room 00 Hex 14

48588=0xBDCC Room 20 Hex 04

48589=0xBDCD Room 40 Hex 12

48590=0xBDCE Room 60 Hex 00

Object listing ROOM pointers

48591=0xBDCF Room 60 Hex 53 C8 (World A-4)

48593=0xBDD1 Room 61 Hex C6 C8

48595=0xBDD3 Room 62 Hex 43 C9

48597=0xBDD5 Room 63 Hex DE C9

48599=0xBDD7 Room 20 Hex 6D CA (World A-1)

48601=0xBDD9 Room 21 Hex FC CA

48603=0xBDDB Room 22 Hex 55 CB

48605=0xBDDD Room 23 Hex E6 CB

48607=0xBDDF Room 24 Hex 45 CC

48609=0xBDE1 Room 25 Hex BC CC

48611=0xBDE3 Room 26 Hex 17 CD

48613=0xBDE5 Room 27 Hex 94 CD

48615=0xBDE7 Room 28 Hex 11 CE

48617=0xBDE9 Room 29 Hex 5C CE

48619=0xBDEB Room 2A Hex C7 CE (World D-4, Overworld Part)

48621=0xBDED Room 2B Hex EA CE (Cloud Bonus Area)

48623=0xBDEF Room 2C Hex 74 C2 (Pipe Intro)

48625=0xBDF1 Room 2D Hex 61 C2 (Overworld Ending)

48627=0xBDF3 Room 40 Hex 07 CF (World A-2)

48629=0xBDF5 Room 41 Hex 7C CF

48631=0xBDF7 Room 00 Hex DB CF (World B-2)

Halfway pages

48633=0xBDF9

Original Offsets 76 50 65 50 75 B0 00 00

7650 World A

6550 World B

75B0 World C

0000 World D

The first digit of the first byte is the midway point for level 1.

The second digit is for level 2.

The first digit for the second byte is level 3.

The second digit is level 4.

 

11223344

11 22

Byte 1

33 44

Byte 2

And offsets 48641=0xBE01 to 48652=0xBE0C were the unknown sets of data. Proberly the high and low bytes of enemy and object data. If anyone found out what they are please let me know. Remember that they can only work on World A levels only.


DISCLAIMER

 

THIS DOCUMENT IS (c) 2006 INSECTDUEL. THIS DOCUMENT IS FOR PRIVATE USE ONLY. YOU'RE NOT ALLOWED TO PUBLISH IT ON YOUR WEBSITE WITHOUT AUTHOR'S PERMISSION, ALTER IT IN ANY WAY, PUBLISH IT IN BOOKS AND/OR MAGAZINES, OR SELL IT FOR ANY PROFIT. YOU MAY PRINT IT AND GIVE IT TO WHOMEVER YOU WANT AS LONG AS YOU DON’T GET ANY CASH FOR IT. YOU MAY ALSO LINK DIRECTLY TO IT UNMODIFIED.

YOU CAN E-MAIL INSECTDUEL FOR QUESTIONS, COMMENTS, CORRECTIONS AND/OR

CONTRIBUTIONS AND YOU WILL BE GIVEN CREDIT FOR THEM AS LONG AS THEY

ARE USEFUL AND PERTINENT TO THE DOCUMENT. THE E-MAIL ADDRESS IS AT THE MAIN PAGE.

Insectduel is in no way in afflication with Nintendo.